package gui;

import java.sql.SQLException;

import com.trolltech.qt.gui.*;

import interne.Client;
import interne.Album;
import gestionBDD.requetesAlbum;

public class fenetreAjoutAlbum extends QWidget {
	
    private QLineEdit titreLineEdit ;
    private QLineEdit soustitreLineEdit ;
    private QCheckBox partageBox ;
    private Client client ;

	public fenetreAjoutAlbum(Client c) {
		
		setClient(c) ;
		
        /** Album GroupBox' **/
        QGroupBox albumGroup = new QGroupBox(tr("Informations sur l'album"));
 
        /* Titre Line Edit with Label */
        QLabel titreLabel = new QLabel(tr("Titre :"));
        titreLineEdit = new QLineEdit();
        titreLineEdit.setFocus();
        
        /* Sous-titre LineEdit with Label */
        QLabel soustitreLabel = new QLabel(tr("Sous-titre :"));
        soustitreLineEdit = new QLineEdit();
        
        /* Partage Checkbox */
        partageBox = new QCheckBox("Partagé");        
        
        /* Album Layout */
        QGridLayout albumLayout = new QGridLayout();
        albumLayout.addWidget(titreLabel, 0, 0);
        albumLayout.addWidget(titreLineEdit, 0, 1);
        albumLayout.addWidget(soustitreLabel, 1, 0);
        albumLayout.addWidget(soustitreLineEdit, 1, 1);
        albumLayout.addWidget(partageBox, 2, 1);
        albumGroup.setLayout(albumLayout);

        /* Bouton Ok */
        QDialogButtonBox boutonOk = new QDialogButtonBox();
        boutonOk.addButton(QDialogButtonBox.StandardButton.Ok);
        boutonOk.clicked.connect(this, "ajouterAlbum()");

        // Dialog Layout
        QGridLayout layout = new QGridLayout();
        layout.addWidget(albumGroup, 0, 0);
        layout.addWidget(boutonOk, 1, 0);
        setWindowTitle(tr("Nouvel Album"));
        setLayout(layout);

	}
	
	public void setClient(Client c) {
		this.client = c;
	}
	
	public Client getClient() {
		return client;
	}

	/*
	 * Ajoute l'album dans la BDD
	 */
	public void ajouterAlbum() throws SQLException {
		try {
			Album album = new Album(client.getIdClient(), titreLineEdit.text(), soustitreLineEdit.text(), partageBox.isChecked()) ;
			requetesAlbum.ajouterAlbum(album) ;
			this.hide() ;
		}
    	catch (SQLException e) {
    		System.out.println(e) ;
    	}
	}
}
